package com.ktwlsoft.fundmanage.payload.innerCommunicate;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

@Getter
@Setter
public class InnerUser {

    @ApiModelProperty(name = "memberId", value = "会员id")
    private String memberId;

    @ApiModelProperty(name = "openId", value = "开放ID")
    private String openId;

    @ApiModelProperty(name = "account", value = "账号")
    private String account;

    @ApiModelProperty(name = "mobilePhone", value = "手机号码")
    private String mobilePhone;

    @ApiModelProperty(name = "mobilePhoneEncry", value = "手机号码")
    private String mobilePhoneEncry;

    @ApiModelProperty(name = "certificationType", value = "证件类型")
    private String certificationType;

    @ApiModelProperty(name = "certificationId", value = "证件号码")
    private String certificationId;

    @ApiModelProperty(name = "certificationIdEncry", value = "证件号码")
    private String certificationIdEncry;

    @ApiModelProperty(name = "state", value = "会员状态0-不可用，1-可用")
    private Integer state;

    @ApiModelProperty(name = "regDate", value = "注册时间")
    private Date regDate;

    @ApiModelProperty(name = "regFrom", value = "注册来源:0-手机号码快速注册，2-管理后台注册")
    private Integer regFrom;

    @ApiModelProperty(name = "email", value = "电子邮箱")
    private String email;

    @ApiModelProperty(name = "realName", value = "真实姓名")
    private String realName;

    @ApiModelProperty(name = "nickName", value = "昵称")
    private String nickName;

    @ApiModelProperty(name = "headIcon", value = "头像")
    private String headIcon;

    @ApiModelProperty(name = "address", value = "地址")
    private String address;

    @ApiModelProperty(name = "birthday", value = "生日")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date birthday;

    @ApiModelProperty(name = "identityState", value = "实名认证状态:false-未认证，true-已经认证")
    private boolean identityState;

    @ApiModelProperty(name = "gender", value = "性别:0-男，1-女，2-未知")
    private Integer gender;

    @ApiModelProperty(name = "memberAccountType", value = "会员中号类型1-普通会员，2-企业")
    private Integer memberAccountType;

    @ApiModelProperty(name = "corporateCertificationName", value = "法定代表人")
    private String corporateCertificationName;

    @ApiModelProperty(name = "corporateCertificationPhone", value = "法定代表人联系电话")
    private String corporateCertificationPhone;

    @ApiModelProperty(name = "corporateCertificationPhoneEncry", value = "法定代表人联系电话")
    private String corporateCertificationPhoneEncry;

    @ApiModelProperty(value = "通讯地址")
    private String postalAddress;

    @ApiModelProperty(value = "邮编")
    private String zipCode;

    @ApiModelProperty(name = "positivePhoto", value = "正面照片")
    private String positivePhoto;

    @ApiModelProperty(name = "backPhoto", value = "背面照片")
    private String backPhoto;

    @ApiModelProperty(name = "handheldPhoto", value = "手持照片")
    private String handheldPhoto;

    @ApiModelProperty(name = "reviewState", value = "审核状态")
    private Integer reviewState;

    @ApiModelProperty(name = "reviewingDate", value = "开始审核时间")
    private Date reviewingDate;

    @ApiModelProperty(name = "reviewDate", value = "审核时间")
    private Date reviewDate;

    @ApiModelProperty(name = "reviewBody", value = "审核备注")
    private String reviewBody;

    @ApiModelProperty(name = "bankCardPositive", value = "银行卡正面")
    private String bankCardPositive;

    @ApiModelProperty(name = "bankCardBack", value = "银行卡背面")
    private String bankCardBack;

    @ApiModelProperty(name = "bankCardBackEncry", value = "银行卡背面")
    private String bankCardBackEncry;

    @ApiModelProperty(name = "bankReservePhone", value = "银行预留手机号码")
    private String bankReservePhone;

    @ApiModelProperty(name = "bankReservePhoneEncry", value = "银行预留手机号码")
    private String bankReservePhoneEncry;

    @ApiModelProperty(name = "bankCardNum", value = "银行卡号")
    private String bankCardNum;

    @ApiModelProperty(name = "identityType", value = "认证类型:1-身份证认证,2-银行卡认证")
    private int identityType;

    @ApiModelProperty(name = "idCardPhoto", value = "身份证头像")
    private String idCardPhoto;

    @ApiModelProperty(name = "effective", value = "证件开始日期")
    private Date effective;

    @ApiModelProperty(name = "effectiveEnd", value = "证件截止日志")
    private Date effectiveEnd;

    @ApiModelProperty(name = "issue", value = "证件签发机关")
    private String issue;

    @ApiModelProperty(name = "nationality", value = "名族")
    private String nationality;

    @ApiModelProperty(name = "belongArea", value = "银行卡开户行")
    private String belongArea;
}
